const express = require('express')

const app = express()

/**
 * (1) 错误级别的中间件必须要放在路由之后，这是例外
 *     因为错误级别中间件要访问err.message，这必须要在前面定义好
 * */ 
app.get('/',(req,res)=>{
  throw new Error('服务器发生了错误')     // 1.手动抛出一个自定义错误
  res.send('Home page')
})

app.use((err,req,res,next)=>{
   console.log('发生错误了：'+err.message); // 2.在服务器内打印错误信息
   res.send(err.message)                   // 3.将相关错误信息相应给客户端
})

app.listen('8080',()=>{
  console.log('http://127.0.0.1:8080');
})